1. Field of the Invention
The present invention relates to programmable interconnect circuits. In particular, the present invention relates to programmable interconnect circuits that are optimized for both static signal routing and dynamic signal routing performances.
2. Discussion of the Related Art
Programmable interconnect circuits are used in three distinct classes of applications: programmable random signal interconnect (PRSI), programmable data path (PDP) and programmable switch replacement (PSR).
In a PRSI application, the programmable interconnect circuit is used at the printed circuit board (PCB) level for programmable signal routing. In this application, the interconnect circuit provides arbitrary signal swapping between integrated circuits on the PCB. Typically, in a PRSI application, the programmable interconnect circuit provides 1-to-1 pin connections which are statically configured, i.e. the signal path does not change in response to control input signals. The signals being routed are very often control signals routed between integrated circuits and their signal paths are often changed multiple times throughout the design process. Thus, a desirable programmable interconnect circuit suitable for supporting a PRSI application must have no restrictions on pin-to-pin signal routability.
In a PDP application, the programmable interconnect circuit performs data path transceiver, multiplexer, and register or latch functions. An example of such an application can be found in a microprocessor-based system, in which a 32-bit or 64-bit data bus is "steered" to memory and peripheral systems of various data width and timing constraints. Such an application requires capabilities for dynamically switched signal routing, data latching and data bus tri-stating. Unlike a PRSI application, however, the signal routing requirements for a PDP application are often formulated early in a design process, so that universal pin-to-pin signal routabilty is not as critical. In a PDP application, the desirable programmable interconnect circuit provides ample support for control of both dynamic signal routing and timing. It is also desirable to have such support as output enable signals, clock signals and minimization of the setup and hold time requirements.
Finally, in a PSR application, the programmable interconnect circuits act as solid state replacement and integration switches for mechanical switches and jumpers, which are often used to configure a system board. These switches are often re-set from time to time during the life time of the system board. Thus, in a PSR application, the programmable interconnect circuit is required to be reprogrammable during the life time s of the application.